// noinspection JSUnresolvedReference /** * Field Google Map */ /* global jQuery, document, redux_change, redux, google */ (function ( $ ) { 'use strict'; redux.field_objects = redux.field_objects || {}; redux.field_objects.google_maps = redux.field_objects.google_maps || {}; /* LIBRARY INIT */ redux.field_objects.google_maps.init = function ( selector ) { if ( ! selector ) { selector = $( document ).find( '.redux-group-tab:visible' ).find( '.redux-container-google_maps:visible' ); } $( selector ).each( function ( i ) { let delayRender; const el = $( this ); let parent = el; if ( ! el.hasClass( 'redux-field-container' ) ) { parent = el.parents( '.redux-field-container:first' ); } if ( parent.is( ':hidden' ) ) { return; } if ( parent.hasClass( 'redux-field-init' ) ) { parent.removeClass( 'redux-field-init' ); } else { return; } // Check for delay render, which is useful for calling a map // render after JavaScript load. delayRender = Boolean( el.find( '.redux_framework_google_maps' ).data( 'delay-render' ) ); // API Key button. redux.field_objects.google_maps.clickHandler( el ); // Init our maps. redux.field_objects.google_maps.initMap( el, i, delayRender ); } ); }; /* INIT MAP FUNCTION */ redux.field_objects.google_maps.initMap = async function ( el, idx, delayRender ) { let delayed; let scrollWheel; let streetView; let mapType; let address; let defLat; let defLong; let defaultZoom; let mapOptions; let geocoder; let g_autoComplete; let g_LatLng; let g_map; let noLatLng = false; // Pull the map class. const mapClass = el.find( '.redux_framework_google_maps' ); const containerID = mapClass.attr( 'id' ); const autocomplete = containerID + '_autocomplete'; const canvas = containerID + '_map_canvas'; const canvasId = $( '#' + canvas ); const latitude = containerID + '_latitude'; const longitude = containerID + '_longitude'; // Add map index to data attr. // Why, say we want to use delay_render, // and want to init the map later on. // You'd need the index number in the // event of multiple map instances. // This allows one to retrieve it // later. $( mapClass ).attr( 'data-idx', idx ); if ( true === delayRender ) { return; } // Map has been rendered, no need to process again. if ( $( '#' + containerID ).hasClass( 'rendered' ) ) { return; } // If a map is set to delay render and has been initiated // from another scrip, add the 'render' class so rendering // does not occur. // It messes things up. delayed = Boolean( mapClass.data( 'delay-render' ) ); if ( true === delayed ) { mapClass.addClass( 'rendered' ); } // Create the autocomplete object, restricting the search // to geographical location types. g_autoComplete = await google.maps.importLibrary( 'places' ); g_autoComplete = new google.maps.places.Autocomplete( document.getElementById( autocomplete ), {types: ['geocode']} ); // Data bindings. scrollWheel = Boolean( mapClass.data( 'scroll-wheel' ) ); streetView = Boolean( mapClass.data( 'street-view' ) ); mapType = Boolean( mapClass.data( 'map-type' ) ); address = mapClass.data( 'address' ); address = decodeURIComponent( address ); address = address.trim(); // Set default Lat/lng. defLat = canvasId.data( 'default-lat' ); defLong = canvasId.data( 'default-long' ); defaultZoom = canvasId.data( 'default-zoom' ); // Eval whether to set maps based on lat/lng or address. if ( '' !== address ) { if ( '' === defLat || '' === defLong ) { noLatLng = true; } } else { noLatLng = false; } // Can't have empty values, or the map API will complain. // Set default for the middle of the United States. defLat = defLat ? defLat : 39.11676722061108; defLong = defLong ? defLong : -100.47761000000003; if ( noLatLng ) { // If displaying a map based on an address. geocoder = new google.maps.Geocoder(); // Set up Geocode and pass address. geocoder.geocode( {'address': address}, function ( results, status ) { let latitude; let longitude; // Function results. if ( status === google.maps.GeocoderStatus.OK ) { // A good address was passed. g_LatLng = results[0].geometry.location; // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); // Get and set lat/long data. latitude = el.find( '#' + containerID + '_latitude' ); latitude.val( results[0].geometry.location.lat() ); longitude = el.find( '#' + containerID + '_longitude' ); longitude.val( results[0].geometry.location.lng() ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } else { // No data found, alert the user. alert( 'Geocode was not successful for the following reason: ' + status ); } } ); } else { // If displaying map based on an lat/lng. g_LatLng = new google.maps.LatLng( defLat, defLong ); // Set map options. mapOptions = { center: g_LatLng, zoom: defaultZoom, // Start off far unless an item is selected, set by php. streetViewControl: streetView, mapTypeControl: mapType, scrollwheel: scrollWheel, mapTypeControlOptions: { style: google.maps.MapTypeControlStyle.HORIZONTAL_BAR, position: google.maps.ControlPosition.LEFT_BOTTOM }, mapId: 'REDUX_GOOGLE_MAPS', }; // Create the map. g_map = new google.maps.Map( document.getElementById( canvas ), mapOptions ); redux.field_objects.google_maps.renderControls( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ); } }; redux.field_objects.google_maps.renderControls = function ( el, latitude, longitude, g_autoComplete, g_map, autocomplete, mapClass, g_LatLng, containerID ) { let markerTooltip; let infoWindow; let g_marker; let geoAlert = mapClass.data( 'geo-alert' ); // Get HTML. const input = document.getElementById( autocomplete ); // Set objects into the map. g_map.controls[google.maps.ControlPosition.TOP_LEFT].push( input ); // Bind objects to the map. g_autoComplete = new google.maps.places.Autocomplete( input ); g_autoComplete.bindTo( 'bounds', g_map ); // Get the marker tooltip data. markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Create infoWindow. infoWindow = new google.maps.InfoWindow(); // Create marker. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), draggable: true, title: markerTooltip, animation: google.maps.Animation.DROP } ); geoAlert = decodeURIComponent( geoAlert ); // Place change. google.maps.event.addListener( g_autoComplete, 'place_changed', function () { let place; let address; let markerTooltip; infoWindow.close(); // Get place data. place = g_autoComplete.getPlace(); // Display alert if something went wrong. if ( ! place.geometry ) { window.alert( geoAlert ); return; } console.log( place.geometry.viewport ); // If the place has a geometry, then present it on a map. if ( place.geometry.viewport ) { g_map.fitBounds( place.geometry.viewport ); } else { g_map.setCenter( place.geometry.location ); g_map.setZoom( 17 ); // Why 17? Because it looks good. } markerTooltip = mapClass.data( 'marker-tooltip' ); markerTooltip = decodeURIComponent( markerTooltip ); // Set the marker icon. g_marker = new google.maps.Marker( { position: g_LatLng, map: g_map, anchorPoint: new google.maps.Point( 0, - 29 ), title: markerTooltip, clickable: true, draggable: true, animation: google.maps.Animation.DROP } ); // Set marker position and display. g_marker.setPosition( place.geometry.location ); g_marker.setVisible( true ); // Form array of address components. address = ''; if ( place.address_components ) { address = [( place.address_components[0] && place.address_components[0].short_name || '' ), ( place.address_components[1] && place.address_components[1].short_name || '' ), ( place.address_components[2] && place.address_components[2].short_name || '' )].join( ' ' ); } // Set the default marker info window with address data. infoWindow.setContent( '
' + place.name + '
' + address ); infoWindow.open( g_map, g_marker ); // Run Geolocation. redux.field_objects.google_maps.geoLocate( g_autoComplete ); // Fill in address inputs. redux.field_objects.google_maps.fillInAddress( el, latitude, longitude, g_autoComplete ); } ); // Marker drag. google.maps.event.addListener( g_marker, 'drag', function ( event ) { document.getElementById( latitude ).value = event.latLng.lat(); document.getElementById( longitude ).value = event.latLng.lng(); } ); // End marker drag. google.maps.event.addListener( g_marker, 'dragend', function () { redux_change( el.find( '.redux_framework_google_maps' ) ); } ); // Zoom Changed. g_map.addListener( 'zoom_changed', function () { el.find( '.google_m_zoom_input' ).val( g_map.getZoom() ); } ); // Marker Info Window. infoWindow = new google.maps.InfoWindow(); google.maps.event.addListener( g_marker, 'click', function () { const marker_info = containerID + '_marker_info'; const infoValue = document.getElementById( marker_info ).value; if ( '' !== infoValue ) { infoWindow.setContent( infoValue ); infoWindow.open( g_map, g_marker ); } } ); }; /* FILL IN ADDRESS FUNCTION */ redux.field_objects.google_maps.fillInAddress = function ( el, latitude, longitude, g_autoComplete ) { // Set variables. const containerID = el.find( '.redux_framework_google_maps' ).attr( 'id' ); // What if someone only wants city, or state, ect... // gotta do it this way to check for the address! // Need to check each of the returned components to see what is returned. const componentForm = { street_number: 'short_name', route: 'long_name', locality: 'long_name', administrative_area_level_1: 'short_name', country: 'long_name', postal_code: 'short_name' }; // Get the place details from the autocomplete object. const place = g_autoComplete.getPlace(); let component; let i; let addressType; let _d_addressType; let val; let len; document.getElementById( latitude ).value = place.geometry.location.lat(); document.getElementById( longitude ).value = place.geometry.location.lng(); for ( component in componentForm ) { if ( componentForm.hasOwnProperty( component ) ) { // Push in the dynamic form element ID again. component = containerID + '_' + component; // Assign to proper place. document.getElementById( component ).value = ''; document.getElementById( component ).disabled = false; } } // Get each component of the address from the place details // and fill the corresponding field on the form. len = place.address_components.length; for ( i = 0; i < len; i += 1 ) { addressType = place.address_components[i].types[0]; if ( componentForm[addressType] ) { // Push in the dynamic form element ID again. _d_addressType = containerID + '_' + addressType; // Get the original. val = place.address_components[i][componentForm[addressType]]; // Assign to proper place. document.getElementById( _d_addressType ).value = val; } } }; redux.field_objects.google_maps.geoLocate = function ( g_autoComplete ) { if ( navigator.geolocation ) { navigator.geolocation.getCurrentPosition( function ( position ) { const geolocation = new google.maps.LatLng( position.coords.latitude, position.coords.longitude ); const circle = new google.maps.Circle( { center: geolocation, radius: position.coords.accuracy } ); g_autoComplete.setBounds( circle.getBounds() ); } ); } }; /* API BUTTON CLICK HANDLER */ redux.field_objects.google_maps.clickHandler = function ( el ) { // Find the API Key button and react on click. el.find( '.google_m_api_key_button' ).on( 'click', function () { // Find message wrapper. const wrapper = el.find( '.google_m_api_key_wrapper' ); if ( wrapper.is( ':visible' ) ) { // If the wrapper is visible, close it. wrapper.slideUp( 'fast', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } else { // If the wrapper is visible, open it. wrapper.slideDown( 'medium', function () { el.find( '#google_m_api_key_input' ).trigger( 'focus' ); } ); } } ); el.find( '.google_m_autocomplete' ).on( 'keypress', function ( e ) { if ( 13 === e.keyCode ) { e.preventDefault(); } } ); // Auto select autocomplete contents, // since Google doesn't do this inherently. el.find( '.google_m_autocomplete' ).on( 'click', function ( e ) { $( this ).trigger( 'focus' ); $( this ).trigger( 'select' ); e.preventDefault(); } ); }; } )( jQuery ); Shbet Giải Đấu Bài Toàn Quốc [Giải Đấu Bóng Đá Quốc Tế] – Orchid Group
Warning: Undefined variable $encoded_url in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54

Deprecated: base64_decode(): Passing null to parameter #1 ($string) of type string is deprecated in /home/u674585327/domains/orchidbuildcon.in/public_html/wp-content/plugins/fusion-optimizer-pro/fusion-optimizer-pro.php on line 54


Shbet Giải Đấu Bài Toàn Quốc [Giải Đấu Bóng Đá Quốc Tế]

Giới Thiệu Về Giải Đấu Bài Toàn Quốc

Giải Đấu Bài Toàn Quốc là shbet một trong những cuộc thi bóng đá quốc tế hữu yêu nhất, được tổ chức thường xuyên bởi giám đốc quốc gia hoặc liên hợp quốc. Đến nay, cuộc thi đã giải thưởng nhiều ngôi sao dân thể và các đội bóng tiêm giác nổi tiếng thế giới.

Lịch Thi Đấu Của Giải Đấu Bài Toàn Quốc

Để biết thêm thông tin về lịch thi đấu của Giải Đấu Bài Toàn Quốc, bạn hãy xem trang web tổ chức cuộc thi hoặc liên hệ với trang web chúng tôi để được cập nhật nghỉnh nghiệp.

Cách Chơi Trong Giải Đấu Bài Toàn Quốc

Trong Giải Đấu Bài Toàn Quốc, mỗi đội sẽ chơi với nhau theo quy định yaro, đội sẽ đến vặn với một quân đội khác và mỗi lần cuộc thi, mỗi đội sẽ có thể hoạt động theo chiêu străte một cách khác nhau.

Bạn có thể theo dõi trận đấu bằng cách xem trực tiąm trên TV hoặc trên các trang web truyền hình để xem kết quả cuộc thi mỗi lần.

Mặt Trăng Trong Giải Đấu Bài Toàn Quốc

Mặt trăng là một trong những yếu tố quan trọng nhất trong Giải Đấu Bài Toàn Quốc. Số liệu trên mặt trăng sẽ giúp bạn hiểu rõ hơn về căng thẳng trong cuộc thi, bao gồm thông tin về số lượng điểm, số lượng gói quân, và các số liệu khác mạo hiillas có thể giúp quản lý cup.

Tuyển Thủ Trong Giải Đấu Bài Toàn Quốc

Cho dù bạn đang chơi theo cách solo hoặc chào mạng, tuyển thủ luôn là một yếu tọ pilot trong Giải Đấu Bài Toàn Quốc. Tuyển thủ sẽ giúp bạn tìm hiểu về các cá nhân, tạo ra một đội tuyển hoạt động hiệu quả, và quảng cáo các thông tin quan trọng.

Khuyến Mại Trong Giải Đấu Bài Toàn Quốc

Trong Giải

Câu Hỏi Thường Gặp Về Giải Đấu Bài Toàn Quốc

Thời Gián Thi Đấu?

Thời gián thi đấu khác nhau tùy thuộc vào từng cuộc thi. Chúng tôi sẽ cập nhật thông tin chi tiết về thời gián thi đấu trên trang web.

Bảng Đội?

Bảng đội sẽ được cập nhật trước mỗi lần cuộc thi. Chúng tôi sẽ cập nhật thông tin chi tiết về bảng đội trên trang web.

Cách Chơi?

Bạn có thể tìm hiểu về cách chơi trong Giải Đấu Bài Toàn Quốc bằng cách đọc quy định hoặc liên hệ với chúng tôi.

Quét Đá?

Quét đá là một kĩ thuật quan trọng trong Giải Đấu Bài Toàn Quốc. Chúng tôi sẽ cập nhật thông tin chi tiết về quét đá trên trang web.

Mật Khẩu

Bạn có thể reset lại mật khẩu bằng cách liên hệ với chúng tôi.

Tài liệu thêm:

Câu hỏi thường gặp về các kỹ năng trong bóng đá

Chiến lược tâm lý?

Chiến lược tâm lý là một kỹ năng quan trọng trong bóng đá, giúp cho một quân đội hoạt động hiệu quả và hợp lệ. Nó bao gồm việc phân tích trận đấu, phân tích đối thủ, và phân tích mình mắt.

Chiến thuật giao chơi?

Chiến thuật giao chơi là một kiểu chiến thuật trong bóng đá, giúp cho một quân đội thu thập được được quyền dạo và đóng vai trò tốt hơn trong trận đấu. Nó bao gồm việc giao chuyển quân lêm nhau và tạo ra các đối tác tốt.

Chiến thuật kẳn đội?

Chiến thuật kẳn đội là một kiểu chiến thuật trong bóng đá, giúp cho một quân đội kiểm soát vùng rộng trên sân và đề phòng đối thủ. Nó bao gồm việc chịu ám trung tâm, chịu mạnh mẽ, và sẵn sàng cho cuộc chiến.

Chiến thuật phi phẩi?

Chiến thuật phi phẩi là một kiểu chiến thuật trong bóng đá, giúp cho một quân đội tạo ra một cách chơi không định hướng và giận biến đối thủ. Nó bao gồm việc khám phá và tận dụng hết số lượng quân và giải phóng tính nhiệt các cá nhân.

Chiến thuật tố?

Chiến thuật tố là một kiểu chiến thuật trong bóng đá, giúp cho một quân đội hoạt động hiệu quả và đủ tiêu chuẩn. Nó bao gồm việc huấn luyện kỹ năng các cá nhân, tạo ra một qua trong, và hợp lệ với quy định của bóng đá.

Tài liệu thêm:

Câu hỏi thường gặp về chính sách bảo mật

Bảo mật khóa?

Bảo mật khóa là một chế độ bảo mật tầm quan trọng để đảm bảo tính bệnh tại một trang web hoặc một hệ thống thông tin. Nó giúp công việc phân tích yêu cầu của người dùng và xác minh xem họ được phép truy cập vào hệ thống.

Bảo mật liên lạc?

Bảo mật liên lạc là một kiểu bảo mật đặc biệt cho chế độ email và chát trực tuyến. Nó giúp đảm bảo tính bảo mật của thông tin liên lạc bằng cách sử dụng mật khẩu, hộp thư riêng biệt, và các công cụ khác để đến chấp nhận mức độ bảo mật.

OCTYPE html><html lang=
Shbet Giải Đấu Bài Toàn Quốc [Giải Đấu Bóng Đá Quốc Tế]

Giới Thiệu Về Giải Đấu Bài Toàn Quốc”/>

Bảo mật mật khẩu?

Bảo mật mật khẩu là một quy định đối với việc tạo mật khẩu một cách an toàn và bảo mật. Nó bao gồm việc sử dụng mật khẩu dài, bao gồm ký tù số và chữ hoa, và được cập nhật thường xuyên.

Tài liệu thêm:

Câu hỏi thường gặp về sưu tầm và đội bóng